package com.love.marriage.userInfo.vo;

import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.love.marriage.config.Long2StringSerializer;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;

import java.math.BigDecimal;
import java.time.LocalDateTime;

@Data
@Schema(name = "InviteCommissionDetailVo", description = "邀请回用明细Vo")
public class InviteCommissionDetailVo {

    @JsonSerialize(using = Long2StringSerializer.class)
    @Schema(name="userId", description = "被邀请人id", type = "Long", implementation = Long.class)
    private Long userId;

    @Schema(name = "userCode", description ="被邀请人编码", type = "String", implementation = String.class)
    private String userCode;

    @Schema(name = "username", description ="被邀请人姓名", type = "String", implementation = String.class)
    private String username;

    @Schema(name = "level", description ="被邀请人等级（2：直推， 3：间推）", type = "Integer", implementation = Integer.class)
    private Integer level;

    @JsonSerialize(using = Long2StringSerializer.class)
    @Schema(name = "rootUser", description ="当前用户", type = "Long", implementation = Long.class)
    private Long rootUser;

    @Schema(name = "amount", description ="被邀请人消费金额", type = "BigDecimal", implementation = BigDecimal.class)
    private BigDecimal amount;

    @Schema(name = "commissionAmount", description ="佣金金额", type = "BigDecimal", implementation = BigDecimal.class)
    private BigDecimal commissionAmount;

    @Schema(name = "createTime", description ="创建时间", type = "LocalDateTime", implementation = LocalDateTime.class)
    private LocalDateTime createTime;

    @Schema(name = "count", description ="数量", type = "Integer", implementation = Integer.class)
    private Integer count;
}
